﻿package frEngine.render
{
    import baseEngine.core.*;
    import frEngine.core.*;
    import frEngine.shader.*;

    public class FrQuadRender extends Object implements IRender
    {
        public static const instance:FrQuadRender = new FrQuadRender;

        public function FrQuadRender()
        {
            return;
        }// end function

        public function draw(param1:Mesh3D, param2:ShaderBase = null) : void
        {
            var _loc_3:* = ShaderBase(param2 || param1.material);
            var _loc_4:* = param1.getSurface(0);
            if (!_loc_3.hasPrepared(param1, _loc_4))
            {
                return;
            }
            var _loc_5:* = param1.material.materialParams;
            _loc_3.draw(param1, _loc_4, _loc_5.depthCompare, _loc_5.cullFace, _loc_5.depthWrite, _loc_5.sourceFactor, _loc_5.destFactor);
            return;
        }// end function

        public function drawDepth(param1:Mesh3D, param2:Number = 1, param3:Number = 1, param4:Number = 1, param5:Number = 1) : void
        {
            return;
        }// end function

        public function drawEdge(param1:Mesh3D, param2:Number = 1, param3:Number = 1, param4:Number = 1) : void
        {
            return;
        }// end function

        public function completeDraw(param1:Mesh3D) : void
        {
            return;
        }// end function

    }
}
